First up I'd like to explain when you'll be needing a new printout of a diagram and when you won't. Forcing dvilj to make a new printout is simply a matter of deleting the obsolete printout file by hand. Determining when to do this is basically very simple:
dvilj can't know if you've changed a diagram's scale or crop values. If
you've done either of these you should delete the diagram's printout from the cache
manually to make sure a new printout is created the next time you're printing your
document.
Although dvilj compares time stamps this only reliably detects if you've updated a
diagram. Copying files usually means that the copy inherits the time stamp of the original,
so in case you've replaced a diagram with another you should delete the diagram's printout
by hand as well.
If you remember those points you shouldn't have any problems with this cacheing mechanism.